/*
 * Wazuh Global sync inventory
 * Copyright (C) 2015, Wazuh Inc.
 * May 11, 2024.
 *
 * This program is free software; you can redistribute it
 * and/or modify it under the terms of the GNU General Public
 * License (version 2) as published by the FSF - Free Software
 * Foundation.
 */

#ifndef _GLOBAL_SYNC_INVENTORY_TEST_HPP
#define _GLOBAL_SYNC_INVENTORY_TEST_HPP

#include "MockOsDataCache.hpp"
#include "policyManager.hpp"
#include "gtest/gtest.h"

// External shared pointers definitions
extern std::shared_ptr<MockOsDataCache> spOsDataCacheMock;

/**
 * @brief GlobalSyncInventory test class.
 *
 */
class GlobalSyncInventoryTest : public ::testing::Test
{
protected:
    /**
     * @brief Construct a new GlobalSyncInventoryTest object
     *
     */
    GlobalSyncInventoryTest() = default;

    /**
     * @brief Destroy the GlobalSyncInventoryTest object
     *
     */
    ~GlobalSyncInventoryTest() override = default;

    /**
     * @brief Set the environment for testing.
     *
     */
    void SetUp() override {}

    /**
     * @brief Clean the environment after testing.
     *
     */
    void TearDown() override
    {
        spOsDataCacheMock.reset();
    }
};

#endif // _GLOBAL_SYNC_INVENTORY_TEST_HPP
